home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Nibble Magazine
/
nib07.dsk
/
SCROLLING DEMO.bas
< prev
next >
Wrap
BASIC Source File
|
2023-02-26
|
5KB
|
142 lines
2 REM ******************************
3 REM * SCROLLING DEMO *
4 REM * BY ROBERT A WELLS *
5 REM * COPYRIGHT (C) 1982 *
6 REM * BY MICRO-SPARC INC *
7 REM * LINCOLN, MA. 01773 *
8 REM ******************************
10 REM HELLO WITH SCROLL DEMO
20 GOSUB 1200
30 PRINT CHR$(4);"BLOAD SCROLL SUITE"
40 SU = 768:SD = 806:SR = 848:SL = 885
50 WL = 32:WW = 33:WT = 34:WB = 33
60 HOME
70 VTAB 2
80 PRINT "HELLO THERE!"
90 FOR I = 1 TO 13: CALL SR: NEXT
100 FOR I = 1 TO 11: CALL SD: NEXT
110 W = 2000: GOSUB 1190
120 W = 500
130 HOME
140 VTAB 12: PRINT " A"
150 GOSUB 1190
160 FOR I = 1 TO 6: CALL SR: NEXT
170 POKE WL,8: POKE WW,32
180 VTAB 2: HTAB 1: PRINT " SMALL"
190 GOSUB 1190
200 FOR I = 1 TO 10: CALL SD: NEXT
210 POKE WL,14: POKE WW,26
220 VTAB 12: HTAB 16: PRINT " SCROLLING"
230 GOSUB 1190
240 FOR I = 1 TO 15: CALL SL: NEXT
250 POKE WL,24: POKE WW,16
260 VTAB 23: HTAB 1: PRINT " EXAMPLE"
270 GOSUB 1190
280 FOR I = 1 TO 11: CALL SU: NEXT
290 POKE WL,0: POKE WW,40
300 W = 2000: GOSUB 1190
310 HOME
320 POKE -16302,1: POKE -16304,1: REM GO TO FULL SCREEN GRAPHICS
330 COLOR= 1: PLOT 0,0: PLOT 0,1
340 FOR I = 1 TO 47: CALL SR: CALL SD: NEXT
350 FOR V = 2 TO 5
360 L = LEN(L$(V)) -1
370 B = B(V)
380 FOR H = 0 TO L
390 POKE B +H, ASC( MID$ (L$(V),H +1,1))
400 NEXT
410 NEXT
420 VTAB 5: PRINT L5$
430 W = 1000: GOSUB 1190
440 FOR I = 1 TO 7: CALL SR: NEXT
450 FOR I = 1 TO 18: CALL SD: NEXT
460 FOR I = 1 TO 7: CALL SL: NEXT
470 FOR I = 1 TO 18: CALL SU: NEXT
480 FOR I = 1 TO 18: CALL SD: NEXT
490 FOR I = 1 TO 3: CALL SR: NEXT
500 FOR I = 1 TO 9: CALL SU: NEXT
510 W = 500: GOSUB 1190
520 POKE WW,20
530 FOR I = 1 TO 3
540 POKE WL,0: CALL SL
550 POKE WL,19: CALL SR
560 NEXT
570 GOSUB 1190
580 FOR I = 1 TO 3
590 POKE WL,0: CALL SR
600 POKE WL,19: CALL SL
610 NEXT
620 W = 500: GOSUB 1190
630 POKE WL,0: POKE WW,40: POKE WT,12: POKE WB,24
640 FOR I = 1 TO 9: CALL SD: NEXT : GOSUB 1190
650 FOR I = 1 TO 9: CALL SU: NEXT : GOSUB 1190
660 POKE WT,0: POKE WB,12
670 FOR I = 1 TO 9: CALL SU: NEXT : GOSUB 1190
680 FOR I = 1 TO 9: CALL SD: NEXT : GOSUB 1190
690 POKE WB,24
700 POKE WL,0: POKE WB,24
710 COLOR= 1: HLIN 0,39 AT 22: HLIN 0,39 AT 23
720 FOR I = 1 TO 20
730 POKE WW,20: POKE WT,0: CALL SL
740 POKE WW,40: POKE WB,12: CALL SU
750 POKE WL,19: POKE WW,21: POKE WB,24: CALL SR
760 POKE WT,11: POKE WL,0: POKE WW,40: CALL SD
770 NEXT : GOSUB 1190
780 POKE WT,0
790 POKE WL,0: POKE WW,20:J = 0
800 FOR I = 1 TO 50: COLOR= RND(1) *16
810 VLIN 0,47 AT J +19
820 IF J = 0 THEN CALL SL
830 IF J = 1 THEN CALL SR
840 J = 1 -J: POKE WL,J *20
850 NEXT
860 POKE WL,0: POKE WW,40: POKE WT,0: POKE WB,12:J = 0
870 FOR I = 1 TO 50
880 COLOR= RND(1) *16
890 HLIN 0,39 AT J +23
900 IF J = 0 THEN CALL SU
910 IF J = 1 THEN CALL SD
920 J = 1 -J: POKE WT,J *12: POKE WB,(J +1) *12
930 NEXT
940 POKE WL,0: POKE WW,20: POKE WT,0: POKE WB,12:J = 0
950 FOR I = 1 TO 100
960 COLOR= RND(1) *16
970 IF J = 1 THEN 1040
980 REM J = 0
990 VLIN 22,25 AT 19
1000 COLOR= RND(1) *16: HLIN 0,39 AT 23
1010 POKE WL,0: POKE WW,40: POKE WT,0: POKE WB,12: CALL SU
1020 POKE WW,20: POKE WB,24: CALL SL
1030 GOTO 1090
1040 REM J = 1
1050 VLIN 22,25 AT 20
1060 COLOR= RND(1) *16: HLIN 0,39 AT 24
1070 POKE WL,0: POKE WW,40: POKE WT,12: POKE WB,24: CALL SD
1080 POKE WL,20: POKE WW,20: POKE WT,0: CALL SR
1090 J = 1 -J: NEXT
1100 POKE -16301,1
1110 POKE WL,0: POKE WW,40: POKE WT,0: POKE WB,24
1120 VTAB 21: HTAB 1: CALL -958
1130 VTAB 23: HTAB 2: INVERSE : PRINT " HIT ANY KEY TO END ": NORMAL
1140 GET T$
1150 COLOR= 0: VLIN 0,39 AT 0
1160 FOR I = 1 TO 39: CALL SR: NEXT
1170 TEXT : HOME
1180 END
1190 FOR IW = 1 TO W: NEXT : RETURN
1200 REM INITIALIZE
1210 DIM BB$(2),BM$(4),MB$(2),MM$(5),L$(5),B$(5)
1220 BB$ = CHR$(0):BB$(2) = BB$ +BB$
1230 BM$ = CHR$(16):BM$(2) = BM$ +BM$
1240 BM$(3) = BM$(2) +BM$:BM$(4) = BM$(2) +BM$(2)
1250 MB$ = CHR$(1):MB$(2) = MB$ +MB$
1260 MM$ = CHR$(17):MM$(2) = MM$ +MM$
1270 MM$(3) = MM$(2) +MM$
1280 MM$(4) = MM$(2) +MM$(2)
1290 MM$(5) = MM$(3) +MM$(2)
1300 L$(2) = MM$(2) +MB$ +BM$(3) +MM$ +MB$ +BM$(2) +MB$ +MM$ +BB$ +BM$(2) +MB$ +MM$ +MB$ +BM$(2) +MB$ +MM$ +BB$ +MM$(4) +BB$
1310 L$(3) = MM$(2) +BM$ +MB$(2) +MM$(2) +BB$ +MM$(4) +BB$ +MB$(2) +BM$ +MM$ +BB$ +MM$(2) +BB$ +MM$ +BB$ +MM$(4) +BB$
1320 L$(4) = MM$(5) +BB$ +MM$ +BB$ +MM$(2) +MB$ +MM$ +BB$ +MM$ +BM$ +MB$ +MM$ +BB$ +MM$(2) +BB$ +MM$ +BB$ +MM$(4) +BB$
1330 L$(5) = MM$(2) +BM$(3) +MM$(3) +BM$(2) +MM$(2) +BM$ +MM$(2) +BM$ +MM$(2) +BM$(2) +MM$(2) +BM$(4) +MM$ +BM$(4)
1340 B(2) = 1152:B(3) = 1280:B(4) = 1408:B(5) = 1536
1350 RETURN